แนะนำวิธีและข้อควรระวังในการประมาณราคาบน AWS
สวัสดีค่ะ วันนี้เราจะมา แนะนำวิธีและข้อควรระวังในการประมาณราคาบน AWS กันค่ะ เป็นบทความที่เราแปลมาจากต้นฉบับจากทางญี่ปุ่นค่ะ สำหรับบล็อกนี้เราใช้คำทับศัพท์เยอะเพื่อให้ง่ายต่อการนำข้อมูลไปอ้างอิงบนเว็บ Official AWS ด้วยค่ะ
อย่างที่หลาย ๆ คนทราบกันว่าการคิดค่าบริการของ AWS คือ คิดตามปริมาณการใช้งานจริง หรือ Pay-as-you-go กล่าวอีกนัยคือ เราไม่จำเป็นต้องลงทุนซื้อทรัพยากรล่วงหน้านั่นเอง อย่างไรก็ตาม หากไม่ทราบราคาล่วงหน้าก็อาจทำให้ผู้ใช้งานมีความกังวลระหว่างใช้งานได้เช่นกัน
ซึ่งทาง AWS ก็มีเว็บไซต์ AWS Pricing Calculator สำหรับประมาณราคา แต่บางท่านอาจยังใช้งานไม่คล่อง ดังนั้น บล็อกนี้เราจะมาแนะนำสิ่งสำคัญและสิ่งที่ต้องระวังในการประมาณราคากันค่ะ
※ แนะนำบล็อก ทดลองคำนวณราคา EC2 Instance โดยใช้ AWS Pricing Calculator
บริการพื้นฐานในการประมาณราคา
บริการของ AWS มีให้เลือกใช้มากมาย แต่เมื่อต้องการประมาณราคาสำหรับระบบทั่วไปบน AWS ควรพิจารณา 3 บริการหลักนี้
- Amazon EC2 บริการเซิร์ฟเวอร์เสมือน
- Amazon EBS บริการพื้นที่เก็บข้อมูลแบบบล็อกที่สามารถเชื่อมต่อกับ พื้นที่ดิสก์ของ Amazon EC2
- Amazon S3 บริการพื้นที่เก็บข้อมูลแบบอ็อบเจ็กต์
ซึ่งได้รวบรวมประเด็นสำคัญสำหรับการประมาณราคาคร่าวๆ ของแต่ละบริการมาให้ในบล็อกนี้แล้ว !
Amazon EC2
เริ่มจากการประมาณราคาประเภท General Purpose (งานทั่วไป)
ราคาต่อชั่วโมงของ EC2 จะคิดค่าบริการตาม Instance Types, OS, Regions เป็นต้น ซึ่งมี หมวดหมู่ให้เลือกใช้หลากหลายมาก โดยแบ่งเป็น General Purpose, Compute Optimized, Storage Optimized, Memory Optimized และ Accelerated Computing ทั้งหมด 5 หมวดหมู่
ในการประมาณราคา ส่วนใหญ่มักจะเลือกหมวดหมู่ General Purpose ซึ่งมีประเภท T และ M โดยแนะนำให้เลือกใช้จากขนาดของ CPU และหน่วยความจำที่ต้องการใช้ในโปรเจกต์ค่ะ
หมวดหมู่ | ประเภทอินสแตนซ์ |
---|---|
General Purpose (งานทั่วไป) | T3/T3a/M6a/M5/M5a เป็นต้น |
Compute Optimized (เพิ่มประสิทธิภาพการประมวลผล) | C7g/C6g/C6a/C5 เป็นต้น |
Storage Optimized (เพิ่มประสิทธิภาพพื้นที่จัดเก็บ) | I4i/I3 เป็นต้น |
Memory Optimized (เพิ่มประสิทธิภาพหน่วยความจำ) | R6a/R5/X2gd/X1 เป็นต้น |
Accelerated Computing (การประมวลผลแบบอัตราเร่ง) | P4/G5/F1 เป็นต้น |
ลักษณะ Instance type ของ EC2 ที่ควรทำความเข้าใจไว้
ชื่อ Instance type ของ EC2 จะมีลักษณะที่อัลฟาเบทตัวแรกคือประเภท family ตามด้วยเลขรุ่น และบอกขนาดหลังจุด (.) เช่น m5.large นอกจากนี้ บางกรณีก็มีอัลฟาเบทอยู่หลังตัวเลขอีกทีด้วย อย่างเช่น m5a.large ซึ่งมีไว้สำหรับการใช้งานเฉพาะอย่าง data analysis เป็นต้น ในการใช้งานครั้งแรกแนะนำให้เลือกใช้ประเภทที่ไม่มีอัลฟาเบธหลังตัวเลขก่อนค่ะ
Amazon EBS
ค่าบริการจะคิดตามประเภท (HDD/SSD) และปริมาณความจุ
Amazon EBS บริการพื้นที่เก็บข้อมูลแบบบล็อก โดยปกติใช้งานคู่กับ EC2 ค่าบริการของ Amazon EBS จะคิดตามประเภทดิสก์และปริมาณความจุ ซึ่งดิสก์แบ่งออกเป็น 2 ประเภทใหญ่ ๆ คือ HDD และ SSD
- SSD แนะนำสำหรับการใช้งานทั่วไป (General Purpose)
- HDD ให้บริการในราคาที่ถูกกว่า
ดังนั้นหากต้องการประหยัดค่าใช้จ่ายให้มากที่สุด การพิจารณาค่าบริการทั้งสองประเภทก็เป็นทางเลือกที่ดีเช่นกัน
หมวดหมู่ | ประเภทอินสแตนซ์ |
---|---|
General Purpose SSD | gp3/gp2 เป็นต้น |
Provisioned IOPS SSD | io2 เป็นต้น |
Throughput Optimized HDD | st1 |
Cold HDD | sc1 |
หากไม่มั่นใจว่าควรใช้งานประเภทไหนก่อนดี ขอแนะนำ gp2 ซึ่งเหมาะกับการใช้งานทั่วไป มีระบบคิดค่าบริการที่เข้าใจง่าย แถมยังราคาถูกอีกด้วย
Amazon S3
เริ่มจากการประมาณการค่าใช้จ่ายด้วย S3 Standard
Amazon S3 คือบริการที่มีความพร้อมในการใช้งานและมีความน่าเชื่อถือสูง เหมาะสำหรับเก็บข้อมูลขนาดใหญ่ และให้บริการพื้นที่จัดเก็บข้อมูล 9 ประเภทที่แตกต่างกันตามความถี่ในการเข้าถึงข้อมูล หนึ่งในนั้น มีบริการที่เรียกว่า Amazon S3 Glacier ซึ่งจะช่วยประหยัดค่าใช้จ่าย แต่อาจใช้เวลานานในการดึงข้อมูล ซึ่งเหมาะสำหรับการจัดเก็บข้อมูลแบบเก็บถาวร การตัดสินใจว่าข้อมูลใดจะถูกเข้าถึงบ่อยแค่ไหนนั้นเป็นเรื่องยาก ดังนั้น หากเลือกใช้ "S3 Standard" เข้ามาช่วยประมาณการจะหมดปัญหาดังกล่าวไปทันที
หมวดหมู่ | รายละเอียด |
---|---|
S3 Standard | พื้นที่จัดเก็บข้อมูลพื้นฐานของ Amazon S3 เหมาะสำหรับข้อมูลที่ต้องการการเข้าถึงบ่อย |
S3 Inteligent-Tiering | มีการแบ่งระดับข้อมูลตามความถี่ในการเข้าถึงข้อมูลโดยอัตโนมัติ |
S3 Standard-IA, S3 One Zone-IA | พื้นที่จัดเก็บข้อมูลราคาประหยัดสำหรับข้อมูลที่มีความถี่ในการเข้าถึงต่ำ |
S3 Glacier Instant Retrival | พื้นที่จัดเก็บข้อมูลสำหรับข้อมูลที่เก็บถาวรซึ่งต้องการเข้าถึงได้แบบทันที |
S3 Glacier Flexible Retrival | พื้นที่จัดเก็บข้อมูลสำหรับเก็บรักษาในระยะยาว ซึ่งสามารถเรียกใช้งานได้อย่างรวดเร็วแต่จะมีความถี่ในการเข้าถึงต่ำ |
S3 Outposts | พื้นที่จัดเก็บข้อมูล Amazon S3 สำหรับใช้งานแบบ On-premises |
อุปสรรคสำหรับการประมาณราคา “ค่าธรรมเนียมการโอนข้อมูล”
อุปสรรคในการประมาณราคาของ Amazon S3 คือค่าธรรมเนียมการโอนข้อมูล เนื่องจาก AWS ไม่มีค่าใช้จ่ายในการอัปโหลดข้อมูล แต่มีค่าใช้จ่ายสำหรับการดาวน์โหลด ซึ่งเราไม่สามารถคาดการณ์ล่วงหน้าได้เลยว่า “เราจะดาวน์โหลดมากน้อยเพียงใดในแต่ละเดือน” จึงส่งผลให้ประมาณราคาได้ยากนั่นเอง ดังนั้น เราควรประมาณการโดยกำหนดขอบเขตการใช้งานด้วยการคาดการณ์ก่อน เช่น "สำหรับความจุทั้งหมด 100GB จะมีการดาวน์โหลดประมาณ 10GB ต่อเดือน" เป็นต้น
ประเด็นสำคัญอื่นๆ
โดยปกติบริการ AWS รุ่นที่ใหม่กว่าจะมีประสิทธิภาพด้านต้นทุนที่สูงกว่า ดังนั้น การเลือกรุ่นล่าสุดคือสิ่งสำคัญในการประมาณราคานั่นเอง และประเด็นสำคัญอีกอย่างคือ เปรียบเทียบการใช้งานระหว่าง On-Premise Data Center กับ ออฟฟิศ ว่าต้องการให้ AWS เชื่อมต่อแบบใด เช่น เชื่อมต่อผ่าน VPN หรือบริการเชื่อมต่อสายเช่าเฉพาะ "AWS Direct Connect" เป็นต้น ซึ่งจะมีค่าบริการแตกต่างกันด้วย จึงแนะนำให้ประมาณราคาเปรียบเทียบแต่ละบริการค่ะ
ข้อผิดพลาดที่มักเกิดขึ้นตอนประมาณราคา
ลืมเปลี่ยน Region
ทุกครั้งที่ใช้งานเว็บไซต์ AWS Pricing Calculator ค่าเริ่มต้นจะถูกตั้งค่าไว้ที่ "US East (Ohio)" และค่าบริการจะแตกต่างกันไปตาม Region ดังนั้น อย่าลืมเปลี่ยน Region ทุกครั้งที่ประมาณราคานะคะ
ไม่ควรกำหนดสเปคเหมือนการใช้งานบน On-Premise
สำหรับการเลือกสเปค บางคนอาจยังเข้าใจว่าควรเลือกใช้สเปคเดียวกับ On-Premise คือเลือกสเปคที่สูงกว่าการใช้งานจริงเพื่อรองรับการใช้งานในอนาคตด้วย แต่สำหรับ AWS เราสามารถเริ่มใช้งานจากสเปคต่ำ ๆ ก่อน เรียกได้ว่า ใช้งานได้อย่างยืดหยุ่นกว่ามาก
แม้ว่าการประมาณราคาล่วงหน้าอาจไม่ต่างจาก On-Premise ถึงอย่างนั้น เราก็สามารถลดราคาต้นทุน ณ ปัจจุบันได้เพราะ ไม่จำเป็นต้องซื้อสเปคสำรองไว้ในอนาคตนั้่นเอง
สำหรับการเลือกสเปค เราสามารถพิจารณาได้จาก CPU/หน่วยความจำของ On-Premise ที่มีอยู่ โดยเลือกจากขั้นต่ำเท่าที่จำเป็นต่อการใช้งานจริง ๆ
สำหรับพื้นที่จัดเก็บข้อมูล (Storage) โดยปกติระบบ On-Premise มักจะกำหนดขนาดโดยคำนึงถึงความต้องการในอีก 5 ปีข้างหน้า แต่สำหรับ AWS ไม่จำเป็นต้องเผื่อพื้นที่มากขนาดนั้น อาจเผื่อไว้ประมาณ 10-20% และเพิ่มขนาดตามปริมาณที่ต้องการในภายหลัง
คำนึงวิธีการชำระค่าบริการระหว่างทำประมาณการราคา
ระหว่างทำประมาณการราคาขอแนะนำให้คำนึงถึงวิธีการชำระค่าบริการด้วย โดยปกติ AWS คิดค่าบริการผ่านบัตรเครดิตเป็นหลัก โดยคำนวณยอดตามปริมาณที่ใช้รายเดือนและหักเงินจากบัตรเครดิตโดยอัตโนมัติหรือบริการชำระเงินด้วยใบแจ้งหนี้ที่รองรับเฉพาะสกุลเงินดอลลาร์สหรัฐเท่านั้น และมีข้อจำกัดบางประการ เช่น ต้องมีการใช้งานมากกว่า 2,000 ดอลลาร์ต่อเดือน ซึ่งยังมีค่าธรรมเนียมการโอนเงินระหว่างประเทศและค่าธรรมเนียมอัตราแลกเปลี่ยนเงินตราด้วย
อีกทางเลือกหนึ่งคือ ใช้บริการเรียกเก็บเงินผ่าน Classmethod (AWS Partner) ซึ่งผู้ใช้งานสามารถชำระเงินด้วยใบแจ้งหนี้เป็นเงินบาทไทยได้ ช่วยแก้ปัญหาอย่างค่าธรรมเนียมการโอนเงินและอัตราแลกเปลี่ยน เป็นต้น นอกจากนี้ยังได้รับส่วนลดการใช้งาน AWS อีกด้วย โดยสามารถอ่านรายละเอียดและติดต่อเราได้ที่นี่เลยค่ะ
Classmethod พร้อมสนับสนุนการใช้งาน AWS
สำหรับท่านที่ไม่รู้ว่า “ควรกำหนดสเปคอย่างไร” Classmethod พร้อมให้การสนับสนุนกับทุกท่าน !!
Classmethod เรามีผู้เชี่ยวชาญที่มีใบรับรอง AWS Certification พร้อมให้คำแนะนำการใช้งาน AWS ที่เหมาะสมที่สุดในแต่ละโปรเจกต์ นอกจากนี้ เรามีบริการเปิดบัญชี AWS เข้าอบรมเรียนรู้วิธีการเลือกสเปคอีกด้วย สำหรับท่านที่สนใจปรึกษาด้านการใช้งานสามารถติดต่อเราได้ที่นี่ และสำหรับท่านที่สนใจเข้าอบรมสามารถอ่านรายละเอียดและติดต่อเราได้ที่นี่เลยค่ะ